import { PrismaClient } from 'generated/prisma';

declare global {
  // eslint-disable-next-line no-var
  var prisma: PrismaClient | undefined;
}

export const prisma = global.prisma || new PrismaClient();

// 在开发环境下，由于热重载和其他原因，代码可能会被多次执行，这会导致创建多个数据库连接实例，造成资源浪费。 通过将 Prisma 实例保存到全局对象中
if (process.env.NODE_ENV !== 'production') {
  global.prisma = prisma;
}

export default prisma;
